package javax.xianfeng.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;

/**
 * @since 2020/01/06 19:41:11
 */
@Configuration
@EnableWebSecurity
public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {

	@Override
	protected void configure(HttpSecurity http) throws Exception {
		// 对请求进行授权
		http.authorizeRequests()
				// 对匹配请求进行授权
				.antMatchers("/ping").permitAll()
				// 对任何请求进行授权
				.anyRequest()
				// 其他请求登录之后可以访问
				.authenticated()
				// 使用 spring security 默认登录页面，否则弹出框登录
//				.and().formLogin()
				// 启用 http 基础验证，跳转到登录页面，否则返回403
				.and().httpBasic();

		// 开启自动配置的注销功能，如果注销成功返回
//		http.logout().logoutSuccessUrl("/");
	}

}
